package com.tedu.day02.test;
/**
 * 匿名内部类：需要了解抽象类与接口定义与使用---拓展：表达式【JavaAPI】
 *  定义：抽象类/接口  引用=new 抽象类/接口（）{}；
 *            特点：对象只需要创建一次时候
 */
public class 匿名内部类 {
    public static void main(String[] args) {
        //创建接口   实现类  实现  USB接口----多态性（造型）
/*      USB usb=new Jack();
        usb.read();usb.write();*/
        //针对：子实现类有多个都需要实现
        //针对：实现一次，创建一次接口对象--匿名内部类创建对象：接口、抽象类
 USB usb=new USB(){
     public void write() {System.out.println("写");}
     public void read() {System.out.println("读");}
  };
        usb.write();usb.read();
        //作业2：抽象类使用匿名内部类方法创建出来，并且输出跑、睡方法
        Animal an=new Animal() {
            public void run() {System.out.println("跑");}
            public void sleep() {System.out.println("睡");}
        };
        an.run();an.sleep();
    }
}
//创建接口   USB   功能： 读 写
interface USB{
    public abstract void write();
    public abstract void read();
}
//以往创建接口对象，先创建实现类
class Jack implements USB {
    public void write() {System.out.println("写");}
    public void read() {System.out.println("读");}
}
//创建抽象类 Animal  功能：跑 睡
abstract class Animal{
    public abstract void run();
    public abstract void sleep();
}
